.TH "DVIPOS" "1" "January 2007" "dvipos 20070107 (KPATHSEA)" "ConTeXt"
.de URL
\\$2 \(laURL: \\$1 \(ra\\$3
..
.if \n[.g] .mso www.tmac
.de EX
.in +3
.nf
.ft CW
..
.de EE
.in -3
.ft R
.fi
..

.SH NAME
dvipos \- compute positions in a DVI file

.SH SYNOPSIS
\fBdvipos\fP [ \fIOPTION\fP... ] \fIinfile[.dvi]\fP

.SH DESCRIPTION
\fBdvipos\fP parses a DVI file looking for \fIpos:\fP specials.  It
currently recognizes \fIpos:pxy\fP, \fIpos:pxywhd\fP,
\fIpos:pxyplus\fP, \fIpos:begbox\fP, \fIpos:endbox\fP,
\fIpos:beglines\fP, and \fIpos:endlines\fP.  It then outputs the
information from those specials along with information that only a DVI
postprocessor could determine, such as the current \fIx\fP and \fIy\fP
location.  The output looks like:
.EX
\\pospxywhd{text:54}{54}{10663sp}{8535sp}{21326sp}{34081sp}{0sp}
.EE
and is suitable for including in a 
.BR tex (1)
or
.BR pdftex (1)
auxilliary file, such as \fIdocument.tuo\fP, to be read in by the next
run of the
.BR tex (1)
or similar typesetting engine.

.SH OPTIONS

.TP
\fB-h, --help\fR
print usage.
.TP
\fB-W, --warning\fR
print warnings.
.TP
\fB-v, --verbose\fR
print verbose output.
.TP
\fB-d, --debug\fR
print 
.BR dvitype (1)
debugging data.
.TP
\fB-s, --smashchars\fR
regard height and depth as zero.
.TP
\fB-o, --output=\fIFILE\fR
send all output to FILE.  Without this option, output goes to stdout.
.TP
\fB-b, --bbox[=\fP\fIFILE\fP]\fR
send bounding box to FILE (default FILE is \fIinfile.pos\fP).
.TP
\fB-f, --framed[=\fP\fIBASE\fP]\fR
request copy of DVI file, \fIBASE.dvi\fP, with bounding boxes
\fBframed\fP (default FILE is \fIinfile_frames.dvi\fP).  See the
\fB--framesize\fP option.
.TP
\fB-m, --mag=\fIINT\fR
override 
.BR tex (1)
magnification by INT.
.TP
\fB-w, --framesize=\fIINT\fR
set frame rule size by INT (default 6554 = .1pt).
.TP
\fB-p, --pages=\fIX:Y\fR
set page ranges from X to Y.

.SH USAGE
.B dvipos
is run mostly behind the scenes by ConTeXt's
.BR texexec (1)
between runs of 
.BR tex (1)
or
.BR pdftex (1),
in order to provide information to and get information about
positional graphics.  These graphics are provided by the MetaFun
interface to
.BR mpost (1).
\fBdvipos\fP is not used (or needed) in PDF-output mode but is
needed for DVI-output mode.  
.BR pdftex (1)
starting with version 1.40 can produce position information even in
DVI mode, so once the ConTeXt macros take advantage of this feature,
the need for \fBdvipos\fP will fade.

Until then, here is a typical use of \fBdvipos\fP:
.EX
dvipos notes.dvi
.EE
The position information that is output is collected by
.BR texexec (1)
to include in the \fInotes.tuo\fP auxilliary file to use in the next
run.


.SH EXAMPLES
.TP
Extract positions from \fIdoc.dvi\fP, with output to \fIdoc.loc\fP:
\f(CWdvipos -o doc.loc doc.dvi\fP
.TP
Same as above, but also send bbox information to \fIdoc.pos\fP:
\f(CWdvipos -b -o doc.loc doc.dvi\fP
.TP
Instead send bbox information to \fI/tmp/debug.pos\fP:
\f(CWdvipos -b=/tmp/debug.pos -o doc.loc doc.dvi\fP

.SH "SEE ALSO"
.BR dvips (1),
.BR dvitype (1),
.BR mpost (1),
.BR pdftex (1),
.BR tex (1),
.BR texexec (1).

For more about positional graphics, see the MetaFun documentation on
the
.URL "http://wiki.contextgarden.net/MetaFun" "ConTeXt wiki" .

.SH BUGS
If you specify a file for the \fB-b\fP option, you must join the
option and name with rather than (the more common) space:
.EX
dvipos -b=/tmp/debug.pos notes.dvi
.EE
works, but
.EX
dvipos -b /tmp/debug.pos notes.dvi
.EE
does not.

.SH AUTHOR
.B dvipos
is written by Jin-Hwan Cho <chofchof@ktug.or.kr>.  It is free
software (GPLv2 or later).  This manpage was written by Sanjoy
Mahajan <sanjoy@mit.edu> and is in the public domain.
